Skip to main content

Full text of "NESQLUG News"

See other formats


l NESQLUG NEWS ! 
! The Journal of Record of ! 
! New England Sinclair QL User Group t 
' Vol II, No 6 : 
! "A Beacon to Guide the Wandering Sojourner Home from the Abyss of Confusion” H 


EDITOR'S NOTES 


AS we reach the end of the 
second year of operation close, 
NESQLUG can justifiably pat 
itself on its collective back. 


Starting from a hardy little band of 
renegades who felt that the Boston 
Computer Society had grown too 
impersonal for our needs, we have 
grown to fourty. 


Ostensibly, we are for New England 
QL Users, but nearly half our 
membership is outside New England, 
the North American home of Sinclair. 


We have met most of the objectives 
of a lively user group. We have 
learned more about the use of our 
computer, we have been creative in 
developing a useful and innovative 
PD software library, and perhaps 
most importantly we have formed 
valued friendships. 


We have achieved an international 
reknown, with significant ‘ exposure 
of both our serious side and the 
whimisical in QL World 


We have seen not just the survival 
of our orphan computer, but the 
regeneration of its life. Although 
few younger enthusiasts have joined 
the American scene and many of the 
older have succumbed to aging and 
had to leave, the worlwide the QL 
has made greater technical progress 
and found more varied applications 
in the past two years than in its 
entire life before, - 


DIRECTORY 
Director 

Treasurer 
Membership Sec'try 
Disk Librarian 
Program Director 


Wewsletter Liason 


NESQLUG NEWS 


Al Boehn, 33 Selfridge Rd, Bedford MA 01730 
Sherm Waterman, 40 Eileen St, Yarmouth Port MA 02675 


Ed Kingsley, 16 Highland Ave, Saugus MA 01906 
Willard Horton, 234 Mauran Ave, East Providence RI 02914 (401) 438-0929 
Editor Peter Hale, 168 Bellingham St, Chelsea MA 02150 

Mike Jonas, 1691 Cambridge St $21, Cambridge MA 02138 


It's a great time to be part of the 
world of the QL! 


FAH 


The NESQLUG NEWS is the Journal 
of the New England Sinclair QL User 
Group. It is published bi-monthly. 


Annual membership is $10.00 (stu- 
dents $5.00) in North America. The 
rest of the world - $15.00 air mail. 


We meet monthly on the first Sat- 


urday of odd-numbered months and 
the first Sunday of even numbered 


months. If that's a holiday weekend, 


we meet the following weekend. 


NEXT MEETINGS 


NESQLUG meets from 11:00 pm to 
4:00pm, Saturday, May 2, at the 
home of Al & Dorothy Boehm, 33 
Selfridge Road, Bedford, MA. See 
Agenda for topics. Call (617) 
275-1097- for. directions. Come at 
noon for coffee and set up. 


In June it meets from 1:00 pm to 
4:00 pn, Sunday, 7, at Al and 
Dorothy Boehn's as above. 


Our exchange policy is simple: we- 
send-you-ours-if-you-send-us-yours 
(WSYOIYSUY) and you have 
something to say about the QL. 


Please forward exchange issues to 
Mike Jonas, 1691 Cambridge St. #21, 
Cambridge MA 02138. 


Unless copywritten by the author, 
articles/listings are in the public 
domain. Attribution is requested. 


phone 
(617) 275-1097 
(508) 362-5322 
(617) 233-3671 


(617) 889-0830 
(617) 876-7251 


1 - May/June 1992 


t 


Editor's 
Next Me 
Dues 

TIDBITS 
M Ni 
Recursic 


The enc 
that du 
$10.00 

elsewher 


QL Worl 
Maxwell : 
it has } 
maybe m 
this. Su 
forget th 


NESQLUG 
there ł 
contribut 


NES 
aN 


The Marc 
delightful 
welcome ' 
and Mi 
NESQLUG., 
find our 
interestin,; 


Congratul: 
her lands 
contest, 

between b 
Joyce, may 


On the ag 
wil be a 
SuperBASI 
graphics « 
to impleme 
can do! 


Additional 

will inclue 
Executable: 
Mike oo 
presente. - 


eer. each call. 


— 
lly calls itself 
er of y each 
n the base y. 
cursion stops 
he remainder 
2turns. The 
or a number 
The power is 
digit printed 
es until the 
fer). It is a 
ubtle enough 
ad scratching 


exercise add 


t base : '3j 


'zbase i,j 


run. Use 
ers . then 
ew 


ithm almost 
er than 10. 
ften used in 
nt) displays 
10, 11, 12, 
st substitute 
uses single 
numbers. 


| Illustrating 


ircles inside 
the level of 


els 1 
‘els (i) 


i=i+1:j=i 


O:END IF 
1-j 


NEW ENGL 


AND 
R QL 
ROUP 


Box 8763 


Boston, MA 02114 


% P.O. 


a 
H 
< 
A 
u 
4) 
< 
H 
0 
H 
u 
i 
bl 
by 


Ryo me iat gs 3 


May/June 


1992 
NESQOLUG News 


Om ome oa oa om s 


nf usa" 
> s-a- a i a 


e part of the 


HHH 


; the Journal 
clair QL User 
bi-monthly. 


$10.00 (stu- 
America. The 
00 air mail. 


he first Sat- 
2 months and 
en numbered 
day weekend, 
reekend. . 


[NGS 


11:00 pm to 


r 2, at the 
7 Boehm, 33 
'd, MA. See 

` (617) 


S. Come at 
up. 


1:00 pm to 
at Al and 
re. 


simple: we- 
nd-us~yours 
you have 
the QL. 


e issues to 
dge St. #21, 


the author, 


the public 
equested. 
phone 


(617) 275-1097 
(508) 362-5322 


(617) 233-3671 
(*"1) 438-0929 
~  ) 889-0830 
(617) 876-7251 


/June 1992 


' CONTENTS 


Editor's notes 

Next Meeling 

Dues 

TIDBITS 

MEETING Agenda 
Recursion in SuperBASIC 


DUES DUE 


The enå of one fiscal year means 
that dues are due for next year: 
$10.00 in North America; $15.00 
elsewhere. 


BS NNN mm 


TIDBITS 


QL World survives the death of the 
Maxwell publishing empire. We hear 
it has been sold twice to date - 
maybe more by the time you read 
this. Subscribers may just have to 
forget the May issue. 


NESQLUG NEWS is a shorty because 
there have not been enough 
contributions! Enough said. 


NESQLUG MEETING 
AGENDA: 
by Will Horton 


The March meeting turn out was a 
delightful success. I would like to 
welcome Tom & Andrew Cavanaugh, 
and Mike Panagiotopoulos to 
NESQLUG. We hope that they will 
find our group to be a fun and 
interesting activity, 


Congratulations to Joyce Blaho for 
her landslide victory in the beep 
contest. It was quite a challenge 
between both contestants. Next year, 
Joyce, maybe I will beat you! 


On the agenda for the May meeting 
will be a graphics contest using 
SuperBASIC. The QL has fine 
graphics capabilities that are easy 
to implement. Let us see what you 
can do! 


Additional topics at the May meeting 
will include "Key Words Out of 
Executables" to be Presented by 
Mike Jonas; "Biorhythms" to be 
presented by Ernie Wider. Last but 


NESQLUG NEWS -2 - 


not least, Ed Kingsley will presen: 
"QLIP Board" and other utilities. 


In closing, my position as Program 
Director is to assist the group in 
putting together an interesting and 
fun agenda so that each meeting is 
an informative yet enjoyable 
occasion. 


If you have an idea -or topic or a 
Piece of software you have cone 
across, please share your find or 
hobby with the rest of the group. 
You would be Surprised how your 
knowledge could benefit other QL 
enthusiasts. 


Feel free to contact me if you have 
any suggestions or ideas, so that 
we can incorporate your ideas into 
meeting topics. Anyone who has a 
topic that they would like to 
present at the May or any other 
meeting, please feel free to contact 
me at home. 


RECURSION IN 
SuperBASIC 
by Bill Cable 


Recursion in programming means a 
program can call itself. SuperBASIC 
supports recursion in both func- 
tions and procedures. 


Below are some short programs 
illustrating recursion. Sometimes a 
programming task can be accom- 
plished by a procedure repeatedly 
calling itself. This might seem like 
lifting yourself up by your 
bootstraps or chasing your tail, but 
it works. 


Naturally, a programming task must 
fit criteria applicable to a recursive 
solution. Recursion reuses the same 
code over and over. Each time a 
procedure calls itself the system 
must store local variable values and 
a returning address (we don't 
worry about it). 


When recursion ends, the returning 
addresses and values are needed as 
the program Teturns to each 
recursion call ~ like following a 
string back through a dark cave. 
(Cont. next page) 


May/June 1992 


Something within a procedure must 
halt recursions and start the return 
process. If not, the recursions will 
go on until the computer runs out 
of memory for variables and 
addresses. Thus, the number of 
recursions is limited, though a short 
procedure could make over 2000 
recursive calls before running out 
of memory on an unexpanded QL. 


Recursion makes for short programs, 
but if many recursions are needed, 
it may not be the fastest program- 
ming solution because the system 
takes time to set up each recursion. 


In a C manual I found a short 
program to convert decimal numbers 
to binary ones by recursion. It is 
adapted below to SuperBASIC and 
generalized so that any positive 
integer decimal number can be 
displayed in any base from 2 to 10. 


We commonly use decimal (base 10) 
numbers (0, 1, 2, 3, 4, 5, 6, 7, 8 and 
9) put in digits arranged right to 
left in powers of 10. Thus 452 is 
4x10°2 + 5x10°1 + 2x10°0 (where 
means raised to the power of). . 


We sometimes use binary (base 2) 
numbers (0 and 1) laid out right to 
left representing powers of 2 (2°0, 
271, 2^2, etc). 


Other base systems are less familiar 
but follow the same rules. So base 
3 means that numbers are composed 
of the numbers 0, 1, and 2 and 
. arranged in powers of 3. It is hard 
for us to quickly interpret numbers 
in other base systems so this simple 
Program makes them a little easier 
to comprehend. Try running it: 


10 DEFine PROCedure base(x,y) 
20 IF x > (y-1) 

30 base INT(x/y),y 

40 END IF 

50 PRINT x MOD y; 

60 END DEFine base 


Run by typing the procedure name 
with 2 arguments. The first argu- 
ment (x) is the decimal number and 
the second (y) is the base used. 
The result is printed on the screen. 


NESQLUG NEWS -3 - 


Print a new line between each call. 
For instance : 

cls:base 63,2 

print:base 64,2 

print:base 64,3 


The procedure repeatedly calls itself 
reducing x by a power of y each 
time until x is less than the base y. 
When that happens, recursion stops 
and each call prints the remainder 
(MOD function) and returns. The 
remainder is always 0 or a number 
less than the base. The power is 
greatest at the first digit printed 
(left most); it decreases until the 
right most digit (0 power). It is a 
Simple program but subtle enough 
that it takes a little head scratching 
to understand. 


For a more interesting exercise add 
this to the program : 


100 CLS:INPUT ‘Use what base: ‘sj 
110 FOR i = 1 TO 1000 

120 PRINT : PRINT i;' ‘;:base i,j 
130 END FOR i 


Start by entering run. Use 
<CTRL><F5> to halt screen, then 
<F5> to restart. 


Amazingly, the algorithm almost 
works for bases greater than 10. 
Hexadecimal (base 16 - often used in 
the computer environment) displays 
fine except that where 10, 11, 12, 
13, 14, 15 occur we must substitute 
a, b, c, d, e, f as HEX uses single 
digit symbols for those numbers. 


Below is a fina: program illustrating 


recursion. It creates circles inside 
each other to represent the level of 
recursion reached. 


10 WINDOW 512,206,0,0 
20 INK 1:PAPER 7:CLS:levels 1 
30 DEFine PROCedure levels(i) 


-40 IF i<50 


50 CIRCLE 75,50,51-isi=it+1: jai 
60 levels i 

70 END IF 

80 IF j=50:INK 7:PAPER 0:END IF 
90 . j=j-1:CIRCLE 175,50,51-j 

100 END DEFine levels 


(A definite must for any one 
interested in graphics! Ed.) 


May/June 1992 


AND 

R QL 
Rox 8763 
MA 092117. 


NEW 
A 


Bosto